package cn.xhy.module.purchase.dal.dataobject.materialdemand;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;

import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 单据 DO
 *
 * @author xhy
 */
@TableName("purchase_material_demand")
@KeySequence("purchase_material_demand_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MaterialDemandDO extends BaseDO {

    /**
     * 单据id标识
     */
    @TableId
    private Long id;
    /**
     * 单据编号
     */
    private String documentNumber;
    /**
     * 商品信息
     */
    private String goodsInfo;
    /**
     * 单据日期
     */

    private Date documentDate;
    /**
     * 类型（1-项目，3办公室，2零星，4销售，5采购）
     */
    private String type;
    /**
     * 流程位置
     */
    private String location;
    /**
     * 状态（1提交，0未提交）
     */
    private String state;
    /**
     * 审核不通过原因
     */
    private String refuse;
    /**
     * 归属项目id
     */
    private String belongingProject;
    /**
     * 关联物资申请单据编号
     */
    private String documentId;
    /**
     * 调拨类型（详情查看字典表）
     */
    private String transferType;
    /**
     * 审核状态（详情查看字典表）
     */
    private Integer auditStatus;
    /**
     * 部门备注审核情况
     */
    private String departmentNote;
    /**
     * 仓管备注审核情况
     */
    private String warehouseNote;
    /**
     * 部门负责审核人
     */
    private String bexamine;
    /**
     * 部门审核日期
     */
    private LocalDateTime bexamineDate;
    /**
     * 仓库管理审核人
     */
    private String cexamine;
    /**
     * 仓库审核日期
     */
    private LocalDateTime cexamineDate;
    /**
     * 签收人
     */
    private String signer;
    /**
     * 签收日期
     */
    private LocalDateTime signerDate;
    /**
     * 期初数据标识——1
     */
    private String initialData;
    /**
     * 单据是否完成（1完成2否）
     */
    private Integer isYn;
    /**
     * 父级id
     */
    private String parentId;
    /**
     * 总经理审核
     */
    private String zjlexamine;
    /**
     * 总经理审核日期
     */
    private LocalDateTime zjlexamineDate;
    /**
     * 1-备货
     */
    private String bh;
    /**
     * 流程单据审核
     */
    private String examineStatus;
    /**
     * 所属部门
     */
    private String department;
    /**
     * 预估金额
     */
    private String estimatedAmount;
    /**
     * 1特殊单价格重录完成
     */
    private String clWc;
    /**
     * 1——宏冲成功
     */
    private String hcOk;
    /**
     * 1作废
     */
    private String isCancel;

    /**
     * 退货单类型（1采购退货，2领用退货）
     */
    private String outType;
    /**
     * 退货类型（1退货退款2退货维修）
     */
    private String returnType;

    private String processInstanceId;

}
